﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Web.Class;
using System.Data;
using VOL;
using BLL;

namespace Web
{
    public partial class Checkout : System.Web.UI.Page
    {
        private GioHangClass _GioHangClass = new GioHangClass();
        private DataTable _dtGioHang = new DataTable();
        private DMKhachBL _DMKhachBL = new DMKhachBL();
        private HoaDonBanBL _HoaDonBanBL = new HoaDonBanBL();
        private ChiTietHoaDonBL _ChiTietHoaDonBL = new ChiTietHoaDonBL();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                FillData();
            }
        }

        protected void btnCheckout_Click(object sender, EventArgs e)
        {
            if (GioHangClass.CheckTonTai())
            {
                _dtGioHang = (DataTable)HttpContext.Current.Session["cart"];
                //  insert table dmkhach
                DMKhach objKhach = new DMKhach();
                objKhach.HoTen = txtHoTen.Text;
                objKhach.Email = txtEmail.Text;
                objKhach.DienThoai = txtDienThoai.Text;
                objKhach.DiaChi = txtDiaChi.Text;
                _DMKhachBL.insertDMKhach(objKhach);

                // insert table hoadonban
                HoaDonBan obj = new HoaDonBan();
                obj.MaKhach = _DMKhachBL.GetMaKhachNew();
                obj.NgHD = DateTime.Now;
                obj.DienGiai = txtDienGiai.Text;
                obj.Duyet = false;
                obj.NgDuyet = DateTime.Now;
                _HoaDonBanBL.insertHoaDonBan(obj);

                // insert table chitiethoadon
                int MaHoaDon = _HoaDonBanBL.GetMaHoaDonNew();
                foreach (DataRow r in _dtGioHang.Rows)
                {
                    ChiTietHoaDon chiTietHoaDon = new ChiTietHoaDon();
                    chiTietHoaDon.MaHang = int.Parse(r["MaHang"].ToString());
                    chiTietHoaDon.MaHD = MaHoaDon;
                    chiTietHoaDon.DonGia = float.Parse(r["DonGia"].ToString());
                    chiTietHoaDon.SoLuong = int.Parse(r["SoLuong"].ToString());
                    _ChiTietHoaDonBL.insertChiTietHoaDon(chiTietHoaDon);
                }

                // xóa session giỏ hàng
                // có thêm chữ static là gọi như thế này
                // không cần phải khởi tạo đối tượng
                GioHangClass.DeleteGioHang();
                Response.Write("<script LANGUAGE='JavaScript' >alert('Mua hàng thành công !');window.location = 'Default.aspx';</script>");
            }
        }

        public void FillData()
        {
            if (GioHangClass.CheckTonTai())
            {
                GridView1.DataSource = GioHangClass.GetGioHang();
                GridView1.DataBind();

                lblTongTien.Text = _GioHangClass.TongTien().ToString();
            }
        }
    }
}